import {emojiMap, emojiUrl} from "@/views/WeChat/chatCoze/emojiMap";

/*
传入消息 , 把传入的文本消息 , 进行判断 , 判断消息里 , 发送的是否是[呲牙]aaa[笑脸]
 */
export function decodeText(payload) {
//  创建一个数组
  const renderDom = []
//  文本消息 内容
  let temp = payload.text
  let left = -1
  let right = -1
  while (temp !== '') {
    //找出第一个笑脸的 [ 的位置
    left = temp.indexOf('[')
    //找出第一个表情的 ] 的位置
    right = temp.indexOf(']')
    switch (left) {
      case 0:
        if (right === -1) {
          renderDom.push({
            name: text,
            text: temp
          })
          temp = ''
        } else {
          const _emoji = temp.slice(0, right + 1)
          if (emojiMap[_emoji]) {
            renderDom.push({
              name: 'img',
              src: emojiUrl + emojiMap[_emoji]
            })
            temp = temp.substring(right + 1)
          } else {
            renderDom.push({
              name: 'text',
              text: '['
            })
            temp = temp.slice(1)
          }
        }
        break
      case -1:
        renderDom.push({
          name: 'text',
          text: temp
        })
        temp = ''
        break
      default:
        renderDom.push({
          name: 'text',
          text: temp.slice(0, left)
        })
        temp = temp.substring(left)
        break
    }
  }
  return renderDom
}
